#include <vector>
#include <list>
#include "tangible.h"
#include "Mision.h"
#include <boost/shared_ptr.hpp>

using namespace std;

class cShip;
class cMision;



class cNivel
{
protected:
vector<cShip *> vShips;
unsigned int Dificultad;	//Varia algunos valores default de las Ships segun la dificultad
list<Tangible *> lTangible;
vector<Mision *> vMision;
vector<Mision *> vCompMision;

public:

	cNivel(void);
	~cNivel(void);


	void SetDificultad(unsigned int dif);
	void UpdateWithDificultad(void);

	void AddShip(cShip & n);
	void RemoveTangible();
	void VaciarShips(void);
	unsigned int GetNumShips(void);

	void AddTangible(Tangible & obj);
	void DestroyTangibles(void);

	void AddMision(Mision & obj);
	void RemoveCompletedMisions();

};

